Method and device for processing video signals for presentation on a display and corresponding computer program product

ABSTRACT

An RGB digital video signal destined to be displayed on a display such as a liquid crystal display (LCD) is converted from the RGB color space to the YUV color space. The signal converted into the YUV color space is subjected to at least a processing operation selected among a sub-sampling operation ( 24 ) and a data compression operation ( 26 ). The signal is then stored in a memory and the signal read from said memory ( 12 ) is then subjected to at least a return operation ( 28, 30 ) complementary to the aforesaid processing operation ( 24, 26 ). The signal subjected to the aforesaid return operation is lastly reconverted from the YUV color space to the RGB color space, thus being susceptible to be displayed on the display.

FIELD OF THE INVENTION

[0001] The present invention relates in general to liquid crystal displays, commonly denominated with the acronym LCD.

[0002] Especially in the color LCD version, the devices in question are applied in the most modern PDA (Personal Digital Assistant) devices and in third generation multimedia cell phones, with advanced video and graphics capabilities, whose use is destined to become ever more widespread over the next few years.

DESCRIPTION OF THE RELATED ART

[0003]FIG. 1 in the accompanying drawings shows—in general terms—the architecture currently used for driving an LCD display, designated with the reference number 10.

[0004] In the diagram of FIG. 1, the display 10, having characteristics which can be considered wholly known insofar as the present context is concerned, carries associated therewith a memory 12 destined to contain the information about the image to be shown on the display 10. The memory 12, also known as picture memory, is read periodically and the information contained therein is transferred to the display 10, which displays them. To display an image on the display 10, therefore, it is necessary to record it on the memory 12, wherefrom it will be read and transferred to the display.

[0005] The memory 12 becomes necessary because, due to the physical properties of the fluid composing the liquid crystal cell, the content of each individual cell of the display 10 must periodically be overwritten with high frequency. The image to be display is then written in the memory 12 with a certain frequency f_(write) and thence read and transferred to the display 10 with a frequency f_(read) that is much greater than f_(write), with f_(read) being the so-called display refresh frequency. Typically, f_(read) has a value that is 5 to 10 times greater than f_(write). For instance, f_(read) can be 70 Hz, whilst f_(write) can be 15 Hz, if an MPEG-4 video stream is to be display.

[0006] The image is, in fact, a rectangular matrix of N samples called pixels (picture elements), each of which is expressed by means of three chromatic components, in other words through the intensity of the red component (R stands for “red), of the green component (G stands for “green”) and of the blue component (B stands for “blue”) . In this way, the resulting color “c” of the pixel is ideally given by the relationship:

c=R+G+B

[0007] In a digital application, each of the three components is quantified on a certain number of levels and generally expressed with a precision of eight bit or less.

[0008] For a general overview of the RGB format in the application scope considered herein, reference can usefully be made to the work by J. L. Mitchell, W. B. Pennebaker, C. E. Fogg and D. J. LeGall, “Mpeg video compression standard”, Chapman&Hall, 1997.

[0009] If each of the three components is expressed with eight bit precision, graphics are known as “true color”, and each pixel thus occupies a memory space of 24 bits. In this case, possible color combinations are 2²⁴, i.e. more than 16 million.

[0010] In so-called “high color” graphics, available pixels are reduced to 16 and distributed as follows: 5-pixel precision for red, 6-pixel for green and 5-pixel for blue for a total of 2¹⁶ possible combinations, equal to 65,536.

[0011] Hence, in the case of a “true color” system, the memory required to contain an image with a width of W pixels and a height of H pixels is equal to W.H.24 bit=3.W.H bytes. Considering as typical a display of QCIF dimensions, so that W=176 and H=144, the memory required therefore is equal to 76,032 bytes; in the case of high color graphics, instead, it is equal to 176.144.2=50,688 bytes.

[0012] To complete the description of FIG. 1, the reference 14 indicates a digital/analog converter, of a type globally known: for instance, it can be a PWM DAC converter destined to convert the digital signals read from the memory 12 into electrical signals allowing the actual presentation of the pixels on the display 10.

[0013] Structure and characteristics of the converter 14 must be considered globally known and, in any case, not relevant in themselves for purposes of understanding the present invention.

[0014] The assembly comprised of the memory 12 and the converter 14 is usually referred to as a “driver” associated with the display (LCD driver).

[0015] The diagram of FIG. 2 refers to a known structure of LCD driver, corresponding in particular to the device HD66766 manufactured by the company Hitachi (see in this regard the related data sheet, Rev 001, August 2001).

[0016] The solution shown in FIG. 2 allows to drive a display (not shown in FIG. 2) operating in “high color” mode.

[0017] For this purpose the incoming RGB signal is subjected, in a module designated as 12 a, to a so-called dithering operation which aims to reduce the number of colors of the incoming image to the required precision. The RGB signal subjected to dithering is stored in the memory 12 to whose output is associated a module 12 b.

[0018] Here, before they are transferred to the display, the signals read from the memory 12 are subjected to a “bit stuffing” operation aimed at restoring the bits lost during the dithering phase by attributing a value 0 to them.

OBJECT AND SUMMARY OF THE INVENTION

[0019] Although the aforementioned solutions according to the prior art are undoubtedly functional, the need remains to achieve additional improvements regarding the reduction of the memory of the driver associated to the LCD especially in view of a consequent reduction in occupied silicon area, of dissipated power and of the cost of the device.

[0020] An object of the present invention is to provide an enhanced solution in this respect.

[0021] According to the present invention, this aim is achieved thanks to a method having the characteristics specifically set out in the accompanying claims. The invention pertains to the corresponding device, as well as to the corresponding computer program product loadable into the memory of a computer and including software code portions for implementing the method according to the invention when the product is run on a digital processor.

BRIEF DESCRIPTION OF THE ACCOMPANYING DRAWINGS

[0022] The invention shall now be described, purely by way of non limiting example, with reference to the accompanying drawings, in which:

[0023]FIGS. 1 and 2, the latter one specifically representative of a prior art solution, have already been described above,

[0024]FIG. 3 represents, in the form of a function block diagram, a possible embodiment of the solution according to the invention

DETAILED DESCRIPTION OF AN EMBODIMENT OF THE INVENTION

[0025] The function block diagram of FIG. 3 should be read in co-ordination with the diagrams of FIGS. 1 and 2.

[0026] The blocks 20 through 26 of the diagram of FIG. 3 refer to treatment operations/modules which intervene on the incoming RGB signal in view of its storage in the memory 12. The blocks designated with the references 28 through 36 instead indicate operations/modules intervening on the signal read from the memory 12 in view of its transfer to the display 10 (typically via the converter 14).

[0027] Next to the various blocks of FIG. 3 are indicated the lengths of the strings of bits present respectively at the input and at the output of each block.

[0028] It is thus readily apparent that the incoming RGB signal, arranged on 12 or 24 bits, is reduced to an 8-bit format in view of its storage in the memory 12. Starting from the signal read from the memory 12 (arranged on 8 bits), an output RGB signal on 12-24 bit is then (re)generated.

[0029] As stated, the object of the invention is to minimize the silicon area required by the picture memory 12, whilst maintaining a high video quality of the image, as well as limited electrical power consumption.

[0030] Preferably, the first operation performed on the incoming RGB signal is a bit stuffing operation (module 20), serving the purpose of bringing sample precision to the required value. The next part of the processing chain is conceived to work on true color graphics, with 8-bit precision for each chromatic component. This allows the driver to drive any kind of display, regardless of the number of colors it supports.

[0031] If the incoming image then has a precision that is lower than 24 bits per pixel (for example, 12 bits per pixel), the precision is increased to 24. This is done by setting to zero the most significant bits (MSB) or the least significant bits (LSB) for each chromatic component. For instance, if the incoming R, G or B components consist of 4, 5, 6 bits, respectively 4, 3, 2 null bits are inserted in MSB (or LSB) position depending on the selected solution.

[0032] The next module in the system, designated with the reference number 22, operates a conversion of the chromatic space of the pixels from the traditional RGB space (in the red, green and blue components) to the YUV space (of the luminance and chrominance components).

[0033] For a general illustration of the characteristics of the YUV chromatic space, reference can usefully be made to the previously mentioned work by J. L. Mitchell et al.

[0034] The operation can be simply expressed by means of a matrix relationship of the following kind: $\begin{bmatrix} Y \\ U \\ V \end{bmatrix} \equiv {\begin{bmatrix} {yr} & {yg} & {yb} \\ {ur} & {ug} & {ub} \\ {vr} & {vg} & {vb} \end{bmatrix} \times \begin{bmatrix} R \\ G \\ B \end{bmatrix}}$

[0035] The elements of the conversion matrix of the color space can be expressed as short sums of powers of two, reducing the chromatic conversion to simple elementary shifting and summing operations, achievable at the hardware level with extreme efficiency.

[0036] This operation does not change the precision of the pixels, which remains 24 bits in total.

[0037] The conversion from the color space RGB to the color space YUV takes into account the physical characteristics of the human eye, which is very sensitive to the luminance component (Y), but not very sensitive to the chrominance components (U and V). This allows to filter chrominance, reducing the number of samples and thus effecting a first reduction of the memory taken up by the image.

[0038] Considering the image to be displayed as composed by three matrices Y, U, and V each of which has a dimension W.H, it is possible to proceed with a sub-sampling, and in particular with a horizontal sub-sampling which operates on the U and V matrices, reducing their dimensions to W/2.H, leaving the Y matrix unchanged. The overall effect is a minimal deterioration in image quality, certainly not perceptible to the human eye. In fact, the filtering can be expressed as:

y(n)=Σ_(n) a(n)·x(n)

[0039] where the summation extends for n ranging from −N/2 to N/2.

[0040] Specifically, y(n) represents the filtered pixel, whilst x(n) is the source pixel. N is the number of adjacent samples necessary to perform the filtering, whilst a(n) designates the numerical coefficients of the filter. Taking into account the characteristics of the application, the complexity of the block can be minimized, setting N=2 and causing the coefficients to be reducible to a short sum of powers of two.

[0041] The data deriving from the sub-sampling operation performed in the module 24 are subjected, in the module designated as 26, to a data compression operation. This is in preferred fashion a data compression operation carried out operating differently on the luminance and chrominance components.

[0042] In particularly preferred fashion, the adopted solution is the one employed in the Rempeg 50 encoding/decoding device, manufactured by the same Applicant (in this regard, one can usefully consult the document R. Burger, D. Pau, “Rempeg 50 encoder/decoder. User manual”, March 1999).

[0043] When it operates on luminance, the compression function receives at its input 16 bytes, corresponding to 16 samples and returns 9 at its output, thereby obtaining a constant compression factor of {fraction (9/16)}. When it operates on the chrominance, the algorithm receives at its input 8 bytes, corresponding to 8 samples and returns 4 at its output, thereby obtaining a constant compression factor of ½.

[0044] In strict terms, the compression solution described herein is of the “lossy” type, i.e. with information losses. The tests conducted by the Applicant, however, demonstrate that, in most envisioned applications, image quality deterioration is in fact negligible, hence not perceptible to the human eye.

[0045] It will be further appreciated that, though the execution of both is preferred, the solution according to the invention does not necessarily require the signal converted into the YUV format to be subjected both to sub-sampling and to compression.

[0046] Thanks to the transformation operations conducted in the modules 20 through 26 described above, the quantity of memory 12 that needs to be included in the LCD driver is very small.

[0047] In particular, the occupation of the entire image can be reduced to about 35%, thus saving as much as 65% of memory. All with negligible deterioration in quality both due to the perception characteristics of the human eye, and to the physical response characteristics of the liquid crystal display.

[0048] Therefore, a true color image can be stored in a space of 26,928 bytes, as opposed to the 76,032 bytes required by the other known solutions.

[0049] In regard to the treatment operations performed on the signal extracted from the memory 12, the modules designated as 28, 30 and 32 perform functions that are essentially complementary to the functions performed, respectively and in order, by the modules designated as 26, 24 and 22.

[0050] Thus the module 28 essentially performs a decompression that is complementary to the compression function performed in the module 26.

[0051] If, for example, for the module 26 the aforementioned Rempeg solution was adopted, the module 28 uses the Rempeg decompression function. According to this solution, when it decodes luminance, the module 28 receives 9 bytes at its input and returns 16, corresponding 16 samples. When it decodes chrominance, the module 28 receives 4 bytes at its input and returns 8, corresponding to 7 samples.

[0052] The module 30 instead is a horizontal super-sampling module which, by an inverse filtering operation on the chrominance components, converts the 4:2:2 format to the 4:4:4 format, returning the U and V matrices to the dimension W.H.

[0053] The modules 28 and 30 thus perform a returning operation, complementary to the operation or operations carried out by the modules 24 and 26.

[0054] Lastly, the module 32 inverts the matrix operation of color space transformation performed by the module 22, returning the signal fed at its input from the color space YUV to the initial color space RGB, with a precision of 8 bits for each of the 3 chromatic components.

[0055] The presence, in the diagram of FIG. 3, of the modules 34 and 36 is aimed at taking into account the fact that the display is driven by means of analog signals, so that the RGB values of the pixels must be made to pass through a digital/analog converter (DAC), such as the converter 14 of FIG. 1, whose precision is less than or equal to 8 bits. If it is less than 8, it is necessary to reduce the precision of the RGB samples from 8 bits to the required value through a bit manipulation operation.

[0056] For example, the following techniques can be used:

[0057] truncating the least significant bits,

[0058] approximation of the least significant bits to the closest integer, and

[0059] sum of pseudo-random noise followed by truncation.

[0060] These solution are substantially equivalent to each other, so the choice of one or the other is dictated by specific construction requirements.

[0061] In the case of 12, 16 and 18 bit inputs, the inverse bit stuffing function is implemented (in the module designated as 32). This operation can indifferently be operated eliminating the most significant bits (MSB) or the least significant bits (LSB) for each chromatic component, inserted as described above with reference to the module 20. For example, if for each R, G or B component the input consists of 4, 5 6 bits, then—respectively—4, 3 or 2 bits are removed in MSB (or LSB) position, depending on the selected solution.

[0062] The module 36, lastly, is destined to perform a range correction operation, aimed at correcting the intrinsic non-linearities of the display response by means of an appropriate re-mapping of the colors.

[0063] This function is performed (according to criteria known in themselves) by means of a look-up table (LUT).

[0064] Naturally, without altering the principle of the invention, the construction details and the embodiments may vary widely from what is described and illustrated herein, without thereby departing from the scope of the present invention.

[0065] In particular, it will be appreciated that the solution according to the invention is susceptible to be embodied advantageously by means of a dedicated processor. Alternatively, the solution according to the invention is susceptible to be embodied using a general purpose processor, appropriately programmed by means of a computer program product loadable into the memory of such a digital processor and including software code portions for implementing the method according to the invention when the computer program product is run on a digital processor.

[0066] All of the above U.S. patents, U.S. patent application publications, U.S. patent applications, foreign patents, foreign patent applications and non-patent publications referred to in this specification and/or listed in the Application Data Sheet, are incorporated herein by reference, in their entirety. 

1. Method for processing an RGB digital video signal to be displayed on a display (10) with the use of a memory (12) characterized in that it comprises the operations of: converting (22) said digital video signal from the RGB color space to the YUV color space, subjecting the signal converted into said YUV color space to at least a processing operation selected among a sub-sampling operation (24) and a data compression operation (26), storing in said memory (12) said signal subjected to said at least a processing operation (24, 26), reading from said memory (12) the signal stored therein, subjecting the signal read from said memory (12) to at least a return operation (28, 30), complementary to said at least a processing operation (24, 26), and reconverting (32) the signal subjected to said return operation from the YUV color space to the RGB color space, the reconverted RGB digital video signal being susceptible to be displayed on said display (10).
 2. Method as claimed in claim 1, characterized in that it comprises the operation of selecting, as said display (10), a liquid crystal display (LCD).
 3. Method as claimed in claim 1 or claim 2, characterized in that at least one among said conversion (22) and re-conversion (32) operations between the RGB color space and the YUV color space is performed as a matrix conversion by means of coefficients expressible as sums of powers of 2, so that at least one among said conversion and reconversion operations is performed by means of a series of elementary shifting and summing operations.
 4. Method as claimed in any of the previous claims, characterized in that it comprises both said operations of sub-sampling (24) and data compression (26), so that said return operation comprises both a data decompression operation (28) and a super-sampling operation (30).
 5. Method as claimed in any of the previous claims, characterized in that said sub-sampling operation operates on the chrominance matrices (U, V) of said signal converted into said YUV color space leaving unchanged the luminance matrix (Y).
 6. Method as claimed in any of the previous claims, characterized in that said sub-sampling operation (24) is a horizontal sub-sampling operation.
 7. Method as claimed in any of the previous claims, characterized in that said data compression operation (26) operates in differentiated fashion on the components of luminance (Y) and chrominance (U, V) of said signal converted into said YUV color space.
 8. Method as claimed in any of the previous claims, characterized in that it comprises a bit stuffing operation (20) performed on said RGB digital video signal before conversion into said YUV color space.
 9. Method as claimed in claim 8, characterized in that it comprises a bit rounding operation (34) performed on said reconverted RGB signal before its display on said display.
 10. Method as claimed in any of the previous claims, characterized in that it comprises a range correction operation (36) by the re-mapping of said reconverted RGB signal in view of its display on said display.
 11. Device for processing an RGB digital video signal for its display on a display (10) with the use of a memory (12), characterized in that it comprises: a conversion module (22) for converting said digital video signal from the RGB color space to the YUV color space, at least a processing module (24, 26) for subjecting the signal converted into YUV color to at least a processing operation selected among a sub-sampling operation (24) and a data compression operation (26), said memory (12) for storing said signal subjected to said at least a processing operation (24, 26), at least a return module (28, 30) for receiving the signal stored in said memory (12) and subjecting the signal read from said memory (12) to at least a return operation (28, 30), complementary to said at least a processing operation (24, 26), and a re-conversion module (32) for re-converting the signal subjected to said return operation from the YUV color space to the RGB color space, the reconverted RGB digital video signal being susceptible to be displayed on said display (10).
 12. Device as claimed in claim 11, characterized in that it is associated to a liquid crystal display (LCD).
 13. Device as claimed in claim 11 or claim 12, characterized in that at least one of said conversion module (22) and said re-conversion module (32) is configured to carry out a matrix conversion by means of coefficients expressible as sums of powers of 2, so at least one among said conversion and re-conversion operations is performed by means of a series of elementary shifting and summing operations.
 14. Device as claimed in any of the previous claims 11 through 13, characterized in that it comprises, as processing modules, both a sub-sampling module (24) and a data compression module (26), and, as return modules, both a data decompression module (28) and a super-sampling module (30).
 15. Device as claimed in any of the previous claims 11 through 14, characterized in that said at least a processing module (24) is configured to carry out said sub-sampling operation by operating on the chrominance matrices (U, V) of said signal converted into said YUV colors space, leaving the luminance matrix (Y) unaltered.
 16. Device as claimed in any of the previous claims 11 through 15, characterized in that said at least a processing module is configured to carry out said sub-sampling operation (24) as a horizontal sub-sampling operation.
 17. Device as claimed in any of the previous claims 11 through 16, characterized in that said at least a processing module (26) is configured to carry out said data compression operation (26) operating in differentiated fashion on the luminance component (Y) and on the chrominance component (U, V) of said signal converted into said YUV color space.
 18. Device as claimed in any of the previous claims 11 through 17, characterized in that it comprises a bit stuffing module (20) capable of operating on said RGB digital video signal before its conversion into YUV color space.
 19. Device as claimed in claim 18, characterized in that it comprises a bit rounding module (34) capable of operating on said reconverted RGB signal before it is displayed on said display.
 20. Device as claimed in any of the previous claims 11 through 19, characterized in that it comprises a range correction module (36) for carrying out a re-mapping of said reconverted RGB signal in view of its display on said display.
 21. Computer program product loadable into the memory of a digital processor and including software code portions for implementing a method as claimed in any of the claims 1 through 10 when said computer product is run on a digital processor. 